<?php

namespace common\models\rbac;

use Yii;

/**
 * This is the model class for table "{{%rbac_role}}".
 *
 * @property int $id
 * @property string $name 角色名称
 * @property string $flag 角色标识
 * @property string $desc 描述
 * @property int $type 角色类型【1普通角色、2内置角色】
 * @property int $status 状态【-1：删除、0：禁用、1：启用】
 * @property int $sort 排序（数字越小，越靠前）
 * @property int $operation_id 操作人ID【member_id】
 * @property int $created_at 添加时间
 * @property int $updated_at 更新时间
 */
class Role extends \common\models\base\BaseModel
{
    const STATUS_DELETE = -1;// 删除
    const STATUS_INVALID = 0;// 失效
    const STATUS_ENABLE = 1;// 正常

    public static $statuss = [
        self::STATUS_DELETE => '删除',
        self::STATUS_INVALID => '停用',
        self::STATUS_ENABLE => '启用',
    ];

    const TYPE_NORMAL = 1;// 普通角色
    const TYPE_SYSTEM = 2;// 内置角色【系统】

    public static $types = [
        self::TYPE_NORMAL => '普通角色',
        self::TYPE_SYSTEM => '系统角色',
    ];

    /**
     * {@inheritdoc}
     */
    public static function tableName()
    {
        return '{{%rbac_role}}';
    }

    /**
     * {@inheritdoc}
     */
    public function rules()
    {
        return [
            [['type', 'status', 'sort', 'operation_id', 'created_at', 'updated_at'], 'integer'],
            [['name', 'flag'], 'string', 'max' => 50],
            [['desc'], 'string', 'max' => 200],
        ];
    }

    /**
     * {@inheritdoc}
     */
    public function attributeLabels()
    {
        return [
            'id' => 'ID',
            'name' => '角色名称',
            'flag' => '角色标识',
            'desc' => '描述',
            'type' => '角色类型【1普通角色、2内置角色】',
            'status' => '状态【-1：删除、0：禁用、1：启用】',
            'sort' => '排序（数字越小，越靠前）',
            'operation_id' => '操作人ID【member_id】',
            'created_at' => '添加时间',
            'updated_at' => '更新时间',
        ];
    }
}
